毕业设计(论文)-基于socket的文件传输系统.doc

上传人:来看看 文档编号:3283469 上传时间:2019-08-08 格式:DOC 页数:36 大小:611.52KB
返回 下载 相关 举报
毕业设计(论文)-基于socket的文件传输系统.doc_第1页
第1页 / 共36页
毕业设计(论文)-基于socket的文件传输系统.doc_第2页
第2页 / 共36页
毕业设计(论文)-基于socket的文件传输系统.doc_第3页
第3页 / 共36页
毕业设计(论文)-基于socket的文件传输系统.doc_第4页
第4页 / 共36页
毕业设计(论文)-基于socket的文件传输系统.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《毕业设计(论文)-基于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邮

23、件方式实现。此三种方法并非不可行,但它们都需要花费较长的时间以及安全性也得不到保证,工作效率将在很大程度上受到限制。如果通过局域网内主机之间复制粘贴来实现文件资源共享,将浪费大量的网络带宽,极大程度上影响了网内用户的工作效率,甚至导致用户不能正常工作;如果依靠移动磁盘实现文件的共享,将花费大量的金钱,而文件较大移动磁盘容量不足的情况下会令人极为头疼,何况移动磁盘是病毒传播的重要途径;如果通过Internet邮件方式实现,用户需要接入Internet服务器,这种方式对远程服务器有非常大的依赖性,即使1KB的文件都要经历极度繁琐的路径,不能彻底实现点对点的即时交流,文件较大的情况下就不言而喻了。最

24、重要的是,在如今病毒黑客横行的网络世界中,信息的安全性也得不到保证。综上所述,依靠Internet网络等方式实现文件资源交互的准确性,快速性及安全性远达不到理想的要求。现行系统存在的主要问题分析:针对企业来说,提高工作效率是企业的一个重心;降低成本是企业赢取最大利益的重要方式;保证信息安全却是可能影响企业生死存亡的关键。企业需要对各种因素有足够深刻的认识才可能实现最终目标-盈利。而传统的文件资源交互方式却存在很多的问题,大致可以分为:一、不能有效地降低文件交互成本;二、文件交换过程过于繁琐;三、内部机密资料得不到安全保证;四、文件交互的准确性得不到更本保证。解决方案:解决当前问题的方案主要是指

25、在允许的成本、性能要求下,分析系统实施的可行性,提出功能实现的依据,包括其简单性,安全性以及经济可行性。根据企业简单快速,安全的资源共享等要求,提出以下四种解决方案:1)操作简单性方案:开发的系统需要有以下特点:Windows友好的用户界面和系统快速的应用方法,简单易操作,不需对使用人员进行培训,可以使用户很好的掌握。对传输文件过程中的文件的载入设置都是非常简单可行,比如:如果用户忘记选择文件接收者的时候系统会自动提示“请选择接收用户”要求用户选择主机而不导致错误出现而引发的不便,这样就大大提高工作效率。而且开发的系统应该简单易操作,易维护,减少了不必要的麻烦。对于家庭局域网以及一些比较简单的

26、中小企业网,系统必须做到在实际应用中较为成功。系统应为用户提供Windows所一贯坚持的非常友好、操作简单的用户界面。2)传输安全性方案:系统开发完成后,能有效地使内部资源与外网的完全隔离,从而保证了内部机密文件的安全性。3)经济可行性方案:系统开发完成必须作到提高文件共享效率,不管是在资金上还是效率上都能达到预期的效果的。最重要的一点就是:使用户避免花费高额的资金去购买各种移动磁盘甚至是通过Internet邮件方式,使得用户方便的同时,也让信息少走了不少“弯路”。 4)快速准确性方案:鉴于系统的目标要求和特点,能够保证快速准确地实现文件共享。综合上述,本设计在Windows XP操作系统下,

27、以中文版MyEclipse for Spring为开发工具,以C/S为系统功能结构,基于点对点的TCP/IP协议理论,通过Socket套节字连接客户端与服务器实现文件及文件夹传输。彻底避免了文件交换过程与外部网络的接触,实现快速的文件资源共享。并能够确保内部文件的机密性,能够在很大程度上有效地提高工作效率。3.2服务器、客户器功能介绍3.2.1服务器功能介绍 本系统服务器的主要功能是供已登录用户获取其他登录用户的ip地址,并不真正参与客户端双方的语言交流与文件传输,也就是说当获取到要传送的对方ip之后,即使服务器关闭也不会影响此时的双方,双方依旧可以交流和传输文件;只不过其他用户要向某人传输文

28、件时不能再简单的获取ip地址了。换句话说当已知对方ip之后即使不登陆服务器或登陆服务器失败照样也可以完成所有可以完成的操作。服务器登陆界面如Error! Reference source not found.。图3- 1服务器界面 3.2.2客户端功能介绍客户端的程序是整个系统程序的核心,它提供了与另一端连接到交流、文件传输的所有功能。用户通过客户端程序登陆到服务器,从而获得已登录用户列表,选择要连接的用户名称,获取其ip地址,然后连接,最后与之进行交流或传输文件。若客户端因某些原因不能登录服务器,那么只要得到对方ip也照样可以与对方通讯。需要注意的是,本系统的连接属于单向连接,即A用户连接B

29、用户之后,A可以对B进行单向信息传输,若B需要与与A通讯则B必须再与A连接。用户登陆界面如图3- 2登陆之后的客户端界面如图3- 3。 图3- 4客户端登陆界面图3- 5客户端界面4实现过程分析4.1系统通讯过程流程图图4- 1系统通讯过程图注:图中箭头方向表示信息流向。4.2服务器、客户端通讯过程设计分析4.2.1服务器端分析服务器端主要由server.java, ServerAgentThread.java和ServerThread.java三个类文件组成,完成与用户连接和监听已登录用户的功能。server.java文件主要是创建服务器的运行界面和创建并启动服务器线程完成把已接收到的登陆的

30、客户端信息(用户名和ip地址)显示在服务器界面上。下边是此文件中获取用户信息并显示的函数。public void refreshList()/更新在线用户列表的业务处理代码Vector v=new Vector();int size=this.onlineList.size();for(int i=0;isize;i+)/遍历在线列表ServerAgentThread tempSat=(ServerAgentThread)this.onlineList.get(i);String temps=tempSat.sc.getInetAddress().toString();temps=temps+

31、-+tempSat.getName()+ 上线;/获得所需信息v.add(temps);/添加到Vector中this.jlUserOnline.setListData(v);/更新列表数据ServerAgentThread.java文件主要功能是获取套接字,创建输入输出流完成与客户端的具体链接和信息交流,即从客户端获取用户信息(包括用户名和ip地址)加入到用户列表中并刷新服务器上用户列表,同时把最新用户名列表发送给客户端,此外还要完成客户端发来的查找相应用户名的ip地址的请求。两个功能的主要函数如下:public void nick_name(String msg)tryString nam

32、e=msg.substring(13);/获得用户的用户名this.setName(name);/用用户名称给该线程取名Vector v=father.onlineList;/获得在线用户列表boolean isChongMing=false;int size=v.size();/获得用户列表的大小for(int i=0;isize;i+)/遍历列表,查看是否已经有该用户名ServerAgentThread tempSat=(ServerAgentThread)v.get(i);if(tempSat.getName().equals(name)isChongMing=true;/有重名,将标志

33、位设为truebreak;if(isChongMing=true)/如果重名dout.writeUTF();/将重名信息发送给客户端din.close();/关闭数据输入流dout.close();/关闭数据输出流sc.close();/关闭Socketflag=false;/终止该服务器代理线程else/如果不重名v.add(this);/将该线程添加到在线列表father.refreshList();/刷新服务器在线信息列表String nickListMsg=;size=v.size();/获得在线列表大小for(int i=0;isize;i+)ServerAgentThread te

34、mpSat=(ServerAgentThread)v.get(i);nickListMsg=nickListMsg+|+tempSat.getName();/将在线列表内容住组织成字符串nickListMsg=+nickListMsg;Vector tempv=father.onlineList;size=tempv.size();for(int i=0;isize;i+)/遍历在线列表ServerAgentThread satTemp=(ServerAgentThread)tempv.get(i);satTemp.dout.writeUTF(nickListMsg);/将最新的列表信息发送到

35、各个客户端if(satTemp!=this)/给其他客户端发送新用户上线的信息satTemp.dout.writeUTF(+this.getName()+上线了.);catch(IOException e)e.printStackTrace();public void findUser(String msg)trySystem.out.println(msg:+msg);String name=msg.substring(7,msg.length();/获得接收方的名字Vector v=father.onlineList;/获得在线用户列表int size=v.size();/获得在线用户列表

36、的大小for(int i=0;isize;i+)/遍历列表,搜索接收方ServerAgentThread satTemp=(ServerAgentThread)v.get(i);if(satTemp.getName().equals(name)/将该信息转发给接收方System.out.println(msg:+satTemp.sc.getInetAddress().toString().substring(1);this.dout.writeUTF(+satTemp.sc.getInetAddress().toString().substring(1);break;catch(IOExcep

37、tion e)e.printStackTrace();4.2.2客户端分析客户端主要有ClientAgentThread.java, ReceiverThread.java ,FileSender.java和Qqlogin.java三个类文件组成,完成与服务器及其他客户端连接并通讯的功能。ClientAgentThread.java文件主要完成与服务器的连接,向服务器发送自己的用户信息,接受服务器发来的用户名列表和向服务器发送获取特定用户ip的请求。主要功能函数如下:public ClientAgentThread(FileSender father)this.father=father;tr

38、ydin=new DataInputStream(father.sc.getInputStream();/创建数据输入输出流dout=new DataOutputStream(father.sc.getOutputStream();String name=father.jtfNickName.getText().trim();/获得用户名dout.writeUTF(+name);/发送用户名到服务器catch(Exception e)e.printStackTrace();public void run()while(flag)tryString msg=din.readUTF().trim(

39、);/获得服务器发来的信息if(msg.startsWith()/收到重名的信息this.name_chongming();else if(msg.startsWith()/收到用户名列表this.nick_list(msg);else if(msg.startsWith()/当收到服务器离开的信息this.server_down();else if(msg.startsWith()/当收到服务器发来的用户IP的信息this.set_sendIP(msg);catch(Exception e)e.printStackTrace();ReceiverThread.java文件主要完成数据的接受与

40、计算数据传送的时间。FileSender.java文件是此系统最核心的部分,完成客户端界面设计和客户端之间的连接与通讯(包括文字通讯和文件传输)的所有功能功能,并有登陆界面的一些错误提示功能(如用户名不能为空等提示),是此系统最核心功能的表述。此文件中清晰表明了此系统的具体通讯过程是与服务器无关;文件传输是以字节流的方式进行的主要函数如下:5 软件运行测试图5.1服务器运行测试启动服务器:图5- 1服务器界面点击启动按钮:图5- 2启动服务器提示界面5.2客户端运行测试启动客户端并输入用户名服务器的ip:图5- 3客户端登陆界面点击登录:图5- 4客户端正常工作界面再按照前面步骤再启动一个客户

41、端,并获取zsy用户的ip,之后点击链接并向对方发送字母d:图5- 5与其它客户端连接后界面此时zsy用户界面:图5- 6收到zsyzsy信息界面再新建用户zsyzsy客户端界面点击发送文件:图5- 7zsyzsy选择发送文件界面选中要发送的文件,之后点击保存,双方界面如下:图5- 8zsyzsy发送文件界面图5- 9zsy收到zsyzsy发送文件请求界面在用户zsy界面上点击接受:图5- 10zsy保存接收文件路径选择界面选择路径后点击保存:图5- 11zsy接收成功界面结语1.特点本系统最大的特点就是结构简单。由于界面清晰、简洁、一目了然,从而使用户使用起来相当的方便,而且与interne

42、t上的类似软件相比,在一些条件上(如网络带宽等)会更加有利于小型局域网中人们的交流、工作。2.待解决问题本系统还有一个特点就是可扩展性非常强。与原因相对,本系统的简单也显示出了缺点和待解决的问题:文件传输部分还存在着一些bug。文件传输部分的设计不支持断点续传的功能。当多个员工需要共同探讨问题或者相互传送文件时,本系统并不支持此功能。参考文献1 Douglas E.Comer.TCP/IP 网络互连M.北京:人民邮电出版社,2002.23.2 Subrahmanyam Allamaraju. Java Server Programming: Principles and Technologie

43、sM. 北京:机械工业出版社,2001,1-23. 3 Bruce Eckel. JAVA编程思想M.北京:机械工程出版社, 2003.12-16. 吕凤翥,马皓.Java语言程序设计J.北京:清华大学出版社.2008.403-409.4 肖新峰,宋强,王立新.TCP/IP协议与网络管理J.背景:清华大学出版社,2009.185-259.5 Douglas D.Huston.Java Network ProgrammingM.北京:清华大学出版社,2004.57.6 朱和平.即时通信研究综述J.现代计算机,2006,(12):55-58.7 刘培鹤,牛晓蕾,杜鹏,何文才,张媛媛.企业即时通信系

44、统安全性分析与设计J.网络安全技术与应用,2007,(2):59-61.8 张效祥.计算机科学技术百科全书.北京:清华大学出版社,1998.34-43.9 冯博,应群.面向对象的JAVA网络编程M.北京:清华大学出版社, 2003.20-33.10 蒋东兴.Windows Sockets 网络程序设计大全M.北京:清华大学出版社,1999.74.11 赵双红,刘寿强,潘春华.P2P通信网络安全问题探析J.计算机安全,2003,(11):6-9.12 David Iseminger.网络连接服务开发人员参考库M.北京:机械工业出版社,2001.9.13 Donald E.Knuth. The Art of Computer ProgrammingM. 北京:人民

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

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1