毕业设计精品]基于SOCKET的大文件批量传输系统的设计与实现.doc毕业设计精品]基于SOCKET的大文件批量传输系统的设计与实现.doc

收藏 分享

资源预览需要最新版本的Flash Player支持。
您尚未安装或版本过低,建议您

I基于SOCKET的大文件批量传输系统的设计与实现摘要SOCKET在英文中是插座的意思,它的设计者实际上是暗指电话插座。因为在SOCKET环境下编程很像是模拟打电话,INTERNET的IP地址就是电话号码,要打电话,需要电话插座,在程序中就是向系统申请一个SOCKET,以后两台机器上的程序“交谈”都是通过这个SOCKET来进行的。对程序员来说,也可以把SOCKET看成一个文件指针,只要向指针所指的文件读写数据,就可以实现双向通信。利用SOCKET进行通信,有两种主要的方式。第一种是面向连接的流方式。顾名思义,在这种方式下,两个通信的应用程序之间先要建立一种连接链路,其过程好像在打电话。一台计算机(电话)要想和另一台计算机(电话)进行数据传输(通话),必须首先获得一条链路,只有确定了这条通路之后,数据〔通话)才能被正确接收和发送。这种方式对应的是TCPTRANSPORTCONTROLPROTOCOL)协议。第二种叫做无连接的数据报文方式,这时两台计算机像是把数据放在一个信封里,通过网络寄给对方,信在传送的过程中有可能会残缺不全,而且后发出的信也有可能会先收到,它对应的是UDPUSERDATAGRAMPROTOCOL)协议。流方式的特点是通信可靠,对数据有校验和重发的机制,通常用来做数据文件的传输。网络的快速发展和普及,文件传输愈来愈频繁,传输文件容量越来越大,单纯的套接字传输不能满足需求。WINDOWSOCKET编程和多线程技术结合可以很好的解决这一问题,使得文件传输效率大大提高能很好的支持大文件、批量传输,提高服务器的响应能力和并发处理能力。WINDOWSOCKET采用字节流的方式传输数据,可以很好的保证传输的稳定性和安全性;而采用动态哈夫曼编码实现传输流的压缩,减轻网络传输负担,提高网络性能满足用户的需求。关键字SOCKET;TCP;多线程;RUP;UMLTHELARGEFILESBULKTRANSMISSIONBASEDONSOCKETSYSTEMIIDESIGNANDIMPLEMENTATIONHUNANCITYUNIVERSITYTHECOMPUTERSCIENCEIS2,004LEVELSOFCOMPUTERSCIENCESANDTHETECHNICALSPECIALTY,HUNANYIYANG413000ABSTRACTSOCKETSOCKETINENGLISHISTHEMEANING,ITISIMPLIEDINFACT,THEDESIGNERSOFTELEPHONESOCKETSOCKETENVIRONMENTBECAUSETHEPROGRAMMINGISSIMILARTOANALOGTELEPHONE,INTERNETIPADDRESSISTHETELEPHONENUMBERTOCALL,THENEEDTOPHONEJACK,INTHEPROCEEDINGSISTOAPPLYASYSTEMSOCKET,AFTERTWOMACHINESONTHEPROCEDURESCONVERSATIONTHROUGHTHISSOCKETARECONDUCTEDTHEPROGRAMMERS,CANALSOSOCKETASAGUIDELINEDOCUMENT,ASLONGASTHEGUIDELINESREFERREDTOTHEDOCUMENTSTOREADANDWRITEDATA,WECANACHIEVETWOWAYCOMMUNICATIONSOCKETCOMMUNICATIONSTOUSE,THEREARETWOMAINWAYSTHEFIRSTISTOCONNECTTHEFLOWORIENTEDAPPROACHASTHENAMESUGGESTS,INTHISWAY,THETWOCOMMUNICATIONSAPPLICATIONSTOESTABLISHALINKBETWEENTHEFIRSTLINK,THEPROCESSSEEMSTOBECALLEDACOMPUTERTELEPHONEANDTOANOTHERCOMPUTERPHONE,DATATRANSMISSIONCALL,YOUMUSTFIRSTOBTAINALINK,ONLYIDENTIFIEDTHISPATHWAY,THEDATAALLCANBEPROPERLYRECEIVEANDSENDTHISISTHECORRESPONDINGTCPTRANSPORTCONTROLPROTOCOLAGREEMENTTHESECONDISCALLEDADATALINKTOTHETEXT,THENTWOCOMPUTERSSUCHASDATAONANENVELOPE,SENTTOEACHOTHERTHROUGHTHENETWORK,BELIEVEDTOBEINTHEPROCESSOFTRANSMISSIONMAYBEINCOMPLETE,ANDISSUEDALETTERMAYALSOHAVETORECEIVE,ITISTHECORRESPONDINGUDPUSERDATAGRAMPROTOCOLAGREEMENTWAYFLOWOFCOMMUNICATIONISCHARACTERIZEDBYRELIABLE,THEDATAANDREISSUEDACHECKMECHANISM,USUALLYUSEDFORTHETRANSMISSIONOFDATAFILESNETWORK39;SRAPIDDEVELOPMENTANDPOPULARITYOFFILETRANSFERMOREANDMOREFREQUENT,INCREASINGTHECAPACITYOFTRANSFERRINGFILES,ASIMPLESOCKETTRANSMISSIONCANNOTMEETTHEDEMANDWINDOWSOCKETPROGRAMMINGANDMULTITHREADINGCANCOMBINEGOODSOLUTIONTOTHISPROBLEM,MAKINGFILETRANSFERGREATLYENHANCEDTHEEFFICIENCYOFLARGEFILESCANBEVERYGOODSUPPORT,BULKTRANSMISSION,IMPROVESERVERCAPACITYANDWITHTHERESPONSECAPACITYWINDOWSOCKETUSEDBYTEWAYTRANSMISSIONOFDATA,CANGUARANTEEAGOODTRANSFEROFSTABILITYANDSECURITYANDTHEUSEOFDYNAMICHUFFMANCODINGTRANSPORTSTREAMCOMPRESSION,REDUCETHEBURDENONTRANSMISSIONNETWORKS,IMPROVENETWORKPERFORMANCETOMEETTHENEEDSOFUSERSIIIKEYWORDSSOCKET;TCP;MULTITHREADED;RUP;UML;目录1绪论111面向对象思想和UML112RUP迭代开发113套接字的发展114多线程技术215基于SOCKET的大批量文件传输系统的功能和特点216目的22可行性分析321编写目的322建议系统可行性分析423经济可行性分析53系统设计与分析631概念的定义632设计人员933需求分析934系统总体设计2035系统详细设计2236数据库理论技术4637数据库设计说明494应用系统实现5141应用系统开发工具5142C/S模型的实现5343主要功能实现545软件测试5751测试概要5752测试计划5753测试总结596安装部署6061简介6062系统环境6063应用程序安装部署6064部署SQL数据库627总结638致谢语649参考文献6511绪论11面向对象思想和UML面向对象方法OBJECTORIENTEDMETHOD是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OOOBJECTORIENTED方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统面向对象思想起源于面向对象语言,伴随着面向对象编程语言的发展和流行,以其新型的独具优越的新方法成为当今软件开发的主流思想。统一建模语言(UML是UNIFIEDMODELINGLANGUAGE的缩写)是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。UML是当今软件行业的通用语言,由于其独特的思想和对以往软件开发经验教训的总结,同时结合当今流行的面向对象的开发思想,使其广泛的应用于软件行业中。从最初的10到现在的20,更贴近实际开发过程。12RUP迭代开发RUP(RATIONALUNIFIEDPROCESS,统一软件开发过程,统一软件过程是一个面向对象且基于网络的程序开发方法论。根据RATIONALRATIONALROSE和统一建模语言的开发者的说法,好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持。RUP和类似的产品例如面向对象的软件过程(OOSP),以及OPENPROCESS都是理解性的软件工程工具把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等)整合在一个统一的框架内。13套接字的发展WINSOCK是指WINDOWSSOCKETS,是一个为MICROSOFTWINDOWS定义的网络编程规范。他源于UNIX中的BERKELY套接字(SOCKET),使用WINDOWSSOCKETS编制的应用程序,可以同其他基于WINDOWSSOCKETSAPI编制的应用程序通过网络进行通讯,并且在编制基于WINSOCK的应用程序时,不需要关心网络通信协议本身是如何工作的。WINSOCK2不仅继承了BERKELYSOCKETS的功能,而且还针对WINDOWS作了扩展,WINSOCK还支持多种网络通讯协议,如常见的TCP/IP(TRANSMISSIONCONTROLPROTOCOL/INTERNETPROTOCOL)协议、XNSXEROXNETWORKSYSTEM,DIGITALEQUIPMENT公司的DECNET协议,NOVELL公司的IPX/SPXINTERNETPACKETEXCHANGE/SEQUENCEDPACKEDEXCHANGE等。目前WINSOCK规范主要针对TCP/IP,但只要提供了实现WINSOCK的动态连接库,任何网络通讯协议都可以同WINSOCK兼容。14多线程技术进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率。线程是在同一时间需要完成多项任务的时候被实现的。多线程的优点使用线程可以把占据长时间的程序中的任务放到后台去处理,用户可以同时处理多件事情,不需等待执行提高了程序的运行速度。可以为每个线程设置优先级,以调整工作进度。15基于SOCKET的大批量文件传输系统的功能和特点本系统的设计与实现主要采用SOCKET编程。同时,使用多线程技术,提高服务器的响应能力和并发处理能力;采用动态哈夫曼编码实现传输流的压缩,减轻网络传输负担;支持断点续传,用户可以自己选择采用断点续传还是重新上传;实现大文件上传,一次可以上传多个文件;提供接口全面,可以动态设置上传保存路径,设置允许扩展名,允许最大大小等;可以限制上传单个文件大小,控制上传带宽上限,允许文件扩展名,拒绝文件扩展名等。16目的通过这次设计实践软件开发过程,运用RATIONALROSE进行用例建模和分析设计加深对UML的认识,采用RUP迭代开发方法进行开发进一步熟悉面向对象思想。用VISUALSTUDIO2005集成开发环境和SERVERSQL2000数据库进行开发实现;应用WINRUNER进行单元测试和集成测试。同时采用MICROSOFTPROJECT画甘特图,对各阶度段进行跟踪,确保更个软件开发过程朝着计划方向稳定前进;保证按时高质的完成各项任务,顺利的完成课题的各项要求,提升自己各方面的能力。32可行性分析21编写目的首先,我们开发此系统当作一个产品而不只是看成一个设计,是为了方便用户传输文件,提高效率。为此,我们把它看做一个项目采用统一过程(RUP)进行开发,采用面向对象的思想结合UML进行分析设计和用例建模,在掌握主流开发思想和方法的同时,确保整个项目朝着正确和可控的方向推进,使整个项目按时,保质完成。212可行性研究的前提2121要求1功能要求①生成数据要求管理员添加用户的基本信息,添加进数据库方便日后使用。②安全性要求用户在没有授权的情况下,不能登录服务器。③界面要求要求界面友好,让使用者倍感舒服,使用方便。2122开发目标(1)利用WINDOWSOCKET字节流的方式传输数据,可以很好的保证传输的稳定性和安全性;而采用动态哈夫曼编码实现传输流的压缩,减轻网络传输负担,提高网络性能满足用户的需求。(2)为了完善管理,用户必须是授权用户,否则无法登录服务器。(3)使用多线程技术,使得文件传输效率大大提高能很好支持大文件、批量传输,提高服务器的响应能力和并发处理能力。(4)采用断点续传技术,减少重复传输量,提高网络资源的利用率,使服务器磁盘利用率提高,减少冗余,提高服务器性能和处理能力。2123环境1开发环境硬件奔四微机一台(服务器/客户机,回路地址需网卡)。软件WINDOWS2000操作系统,SQLSERVER2000数据库系统,VISUALSTUDIO2005平台。2运行环境硬件奔四以上微型计算机。软件服务器端必须运行在WINDOWS2000操作系统,同时安装有SQLSERVER2000
编号:201311211309129468    类型:共享资源    大小:450.50KB    格式:DOC    上传时间:2013-11-21
  
6
关 键 词:
专业文献 学术论文 精品文档 毕业设计
  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:毕业设计精品]基于SOCKET的大文件批量传输系统的设计与实现.doc
链接地址:http://www.renrendoc.com/p-109468.html

当前资源信息

4.0
 
(2人评价)
浏览:25次
liyun上传于2013-11-21

官方联系方式

客服手机:17625900360   
2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   

精品推荐

相关阅读

人人文库
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

网站客服QQ:2846424093    人人文库上传用户QQ群:460291265   

[email protected] 2016-2018  renrendoc.com 网站版权所有   南天在线技术支持

经营许可证编号:苏ICP备12009002号-5