ASP.NET的网络文件下载系统设计与实现
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
摘 要
内容来自think58 [版权所有:http://think58.com]
[来源:http://think58.com] 现代信息技术的飞速发展和网络的全球化,使人们可以快捷、便利的方式获取所需的信息资料。然而,尽管网络环境给用户带来许多便利和实惠,但是网络环境下的信息资源共享仍遇到许多障碍。信息主要是以文件的形式聚集存在。我们要互相访问并使用资源,就要进行文件传输,需要下载器。现在的流行的下载器或多或少都存在一些缺陷让网名们感到不如意,研究下载器有着很好的前景。
论文设计并实现了一个基于.NET平台开发的一款下载器,采用C/S网络结构。首先对现在常用的.NET平台进行了分析,并对Visual C#进行Internet通讯编程的技术进行了研究,介绍了.Net包中请求/响应层、应用协议层和传输层等高抽象程度的Internet通讯服务。然后详细介绍了系统的需求分析和设计过程,给出了服务器和客户端的功能模块及总体流程,最后给出了下载器服务器和客户端的编码实现,其中使用Socket实现服务器与客户端之间的通行,并使用HttpWebRequest下载文件,通过设置Range值实现断点续传。并对系统各个功能进行了测试,分析优缺点和总结。
[来源:http://think58.com]
关键词:下载器,.NET,套接字,多线程,断点续传
第一章 绪 论
copyright think58 [资料来源:http://think58.com]
[来源:http://think58.com]1.1 课题背景
随着Internet技术的兴起与发展和网络技术的蓬勃发展,人们希望通过互联网来共享网络上的资源,Google、百度在网络信息的挖掘和供给方面无疑为广大网民提供了无比海量、精确的感受,但是网民在网络上冲浪并不只限制于信息的查找?据权威分析,网民对于网络上视频、音频、软件、游戏等资源文件的需求占网民上网目的的64.6%,也就是说,有64.6%的网民上网是为了寻求各种各样的多媒体感受。而单搜索引擎是没有好的办法解决这个问题的,尽管Telnet提供了访问远程文件的极好方法,但怎么也比不上使用自己计算机中的文件方便。如果用户想使用其它计算机上的文件,最理想的方法就是把它COPY到自己的计算机中,以便在本地计算机上操作。因此,拥有一款好的下载软件就是网民的必然选择。
此外,在下载文件的时候,操作的简易性和人性化的传输都是很重要的考虑因素。那么用什么方法去将远程计算机中的文件获取过来呢?下载器正是完成这项工作的工具。很多软件公司也一直致力于为用户提供最好的搜索结果和下载感受,比如迅雷,电驴,BT等,而这些也都是我们经常用的下载工具,但网民们并不能找到一个完全符合自己的下载工具,它们或多或少都会有些地方让使用它们的网民们感到不如意。
[资料来源:http://THINK58.com]
而.NET则是目前最流行的Windows平台应用程序开发环境,作为微软公司主推的新一****发平台,以其强大的技术,以及操作简单,极大缩短的软件开发周期的优点已经受到绝大部分软件开发人员的喜爱。
内容来自think58
[资料来源:THINK58.com]
[资料来源:www.THINK58.com][来源:http://www.think58.com]
1.2 研究现状
目前,流行的下载软件种类繁多,如电驴,BT,迅雷等,这些都是网民们经常用到的下载工具,它们各有千秋,各有各的优势和缺点。
首先是口碑最好的迅雷,取迅雷不及掩耳的意思,其采用最新的多线程下载技术,单纯从下载速度上来看,下载速度确实挺快的,特别是一些普遍的资源,但优点突出,缺点也很明显。迅雷下载的时候超占带宽资源,有时根本连网页也很难打开,据说是采用了BT的机制,在下载的同时不断的在背后上传着一些东西。在下载一些小于
其次是BT,BT充分发挥“人人为我,我为人人”的分享精神,在下载的同时也在上传,采用P2P多点下载技术,把一个完整的文件分成若干个块,各自完成下载部分,通过种子的下载与别人分享。在下载一些刚发布的热门文件时,BT的优势很明显,特别是在夜间,基本上可以达到带宽的上限下载速度,这也就是为什么搜索到的大一点的电影文件都采用BT发布的原理。但BT的缺点是一开始的速度并不是太理想,必须稳定之后速度才能达到最快的峰值,而且受种子的限制,如果没有种子,或者是下载人数很少时,BT的速度是不能忍受的,这也就是为什么各大BT论坛都号召大家在用BT下载时下载刚发布的电影的原因。所以,时效性成了BT的最大缺点。
然后是网络蚂蚁,它是最老牌的国产下载软件,98年就已经发布了最早的版本。网络蚂蚁是国内共享软件的一个典型代表,伴随着中国的网络一起走过了一段发展的岁月。经过三年多的不断发展,网络蚂蚁的功能已经相当强大,对于很多网民来说,网络蚂蚁已经是不可或缺的网络工具。网络蚂蚁可以修复下栽中损坏的zip文件,这一点对于用户非常的有用,减少了很多重复下载。网络蚂蚁还为第三方的开发人员提供了应用程序的接口,网管们可以可以通过服务器端的控制标记来告诉网络蚂蚁如何来访问站点,以保护站点免受太多连接而阻塞。网络蚂蚁对文件进行管理没有其他软件那么方便,网络蚂蚁中更多的是按照下载的时间来管理下载文件,对于下载较多的用户来说,这并不是十分的方便的。
copyright think58 [资料来源:www.THINK58.com]
第三章 系统分析与设计
3.1 系统需求分析3.1.1 任务概述
随着Internet技术的兴起和网络技术的蓬勃发展,网络上的各种资源越来越多,越来越全,网民对于网络上视频、音频、软件、游戏等资源文件的需求也越来越大,拥有一款好的下载工具则成为网民的必然要求。本次设计,结合现在流行的下载器的优点,相互弥补缺点,使用傻瓜化但具有高级人性化设置功能,尽可能减少系统资源占用,基于.NET平台实现一个简单的下载器。
3.1.2 功能和性能需求
1. 对服务器功能的需求
(1) 提供文件下载功能:能够下载绝大部分网络资源,这是本系统服务器的基本功能也是必需的功能。
(2) 提供信息记录功能:客户端下载远程文件时,能显示其信息。
[资料来源:THINK58.com]
(3) 监控用户的连接信息,统计连接的客户端数量。
[资料来源:THINK58.com]
(4) 支持断点续传:当线程还未完成,突然中断后要能接着前面的工作进行,即继续传输文件。
[资料来源:http://www.THINK58.com]
2. 对服务器性能需求
(1) 能正常启动服务器,等待客户机的连接。
(2) 多个客户端连接时,处理无异常。
[来源:http://think58.com]
(3) 在执行多线程下载时,不允许出现因为程序的原因导致下载文件出错的情况。
[版权所有:http://think58.com]
(4) 在执行多任务下载时,不允许出现因为程序的原因导致下载文件出错的情况。
[版权所有:http://think58.com]
3. 对客户端功能需求
(1) 登录服务器:通过自己注册的账号密码登陆服务器,并且根据改账号下载文件数量提升账号等级;
(2) 配置参数设置:可根据自己需要,手动更改下载时的各种配置参数信息。
(3) 提供文件下载功能:能够下载绝大部分网络资源,实现对远程文件的下载。
(4) 断点续传:当连接中断,用户可以接着前面的进度继续下载或上传文件。
4. 对客户端性能的需求
think58.com
[版权所有:http://think58.com]
[资料来源:THINK58.com](1) 在不存在网络传输错误、服务器IP地址端口号正确的情况下出现连接错误。
(2) 手动配置的各项参数信息必须能正确的作用于客户端下载任务之时。
(3) 下载文件时保持文件在服务器上的原有格式, 保证下载数据的正确性。
[资料来源:http://www.THINK58.com]
(4) 在执行多线程多任务下载时,能够保证下载数据的正确性。
think58.com [来源:http://www.think58.com]
[来源:http://www.think58.com]在网络畅通服务器正常运行以及运行环境规定的条件下,单次连接操作的响应时间要求在5秒钟之内。文件下载视网络情况而定。
3.4 客户端设计3.4.1 客户端功能模块划分
下载器的客户端主要由五个模块组成:用户登录、下载任务管理、下载参数设置、线程信息显示、任务显示与控制。整个系统通过图形界面将各个模块组合,形成了“傻瓜”式操作界面,极大提高人机交互性。系统通过用户提供的所需下载资源的地址连接到服务器, 并把资源下载到用户所选择的本地目录中。整体结构模块如图3.3所示:
3.4.3 客户端子模块设计
1. 在登录模块,用户可以注册以及登录自己的账号,当用户登陆账号后下载资源是会增加账号积分,当积分达到一定程度则可提升账号等级;
2. 在下载任务管理模块,可以选择各类下载任务类型,比如选择正在下载类型,则在任务显示与控制模块则会显示当前系统所有未完成的下载任务。
内容来自think58 [资料来源:http://www.THINK58.com]
[资料来源:THINK58.com]3. 任务显示与控制模块,可以显示下载任务进度情况,并且能够在选定某任务情况下控制该任务的下载情况,如暂停或删除改任务。
4. 线程信息显示模块,在任务显示与控制模块选定某任务情况下可以显示该任务各线程的具体信息,如连接服务器情况。
5. 下载参数设置模块,在该模块下可以设置各项下载参数,该模块又可分为4个子模块:
(1) 常规设置:该模块下可设置下载时的缓存等。
(2) 目录设置:该模块下可设置下载完成后的文件保存路径等。
(3) 连接设置:该模式下可设置当连接出错时的重试等待时间和重复次数,以及进行多任务下载时最多可同时进行下载的任务数等。
(4) 监视设置:该模式下可设置系统可下载的文件类型等。
包含资料:源程序+论文(15000字以上)+可执行程序+答辩稿ppt+开题报告+外文翻译
获取资料请您联系本站客服
[资料来源:http://THINK58.com]
下一篇:ASP.NET图书馆管理信息系统(asp.net+sql数据库)设计与实现