资源下载工具的设计与开发毕业论文

mediafire下载工具  时间:2021-01-03  阅读:()

下载工具的设计与开发

摘要

在BT软件以及电驴等P2P工具日益发展的今天不管你有多少带宽他都会100%的占用。这类P2P软件的下载速度完全依赖带宽然而如何在不提高带宽的前提下提高局域网的下载速度是一个符合实际的问题本文就基于该问题提出并实现了“分布式下载工具”系统。该系统很好的解决了局域网被限速的问题大大提高了下载速度。

“分布式下载工具”联合局域网的几台客户机同时去下载I nternet网上的同一资源的不同数据块下载完后按顺序统一整合。它有下载客户机与服务器的功能分别运用VC和VB.Net开发设计。客户机完成下载与连接其他用户的功能而服务器则管理用户和资源情况,供客户机提供在线用户的数据,并且服务器能够对用户和资源进行控制。比如:封锁某些不合法的资源、禁止某些不合法的用户使用等。

本系统设计完成后并与其他下载软件进行了测试比较提升效果明显有一定推广使用价值。

关键词下载速度;下载软件;局域网

The Development of Distributed Download

Tool

ABSTRACT

P2P download tools l ike BT and e-Mule became increasingly developed nowadays.No matter how much bandwidth you have, 100 percentful ly of itwi l l be the occupied.Download speed of such p2p software is total ly depends on the bandwidth.However, how to boost speed of LAN on the actual ity of bandwidth is a practical issue.this article expatiates from such issue and actual ize“distributed download tool”system.This system has a very good solution to the l imited LAN,strongly improving the download speed.

The "Distributed download tool”, is a technology to join several cl ients at the same time to download different data blocks from the some resources on the Internet,

and each cl ient reunifies these blocks a completed fi le.The system can act as cl ient and server both, respectively,with VC and VB.Netto exploit and design.As a cl ient it does download work and connects with other users;whi le being the server, it manages the users and resources for the cl ient and provides onl ine data.Besides,the server can control users and resources.

Compared with other download software, a completed “Distributed download tool” system upgrades download speed significantly and is of good popularization value.

Key words: Download Speeds;Download Software;Local Area Networks

目录

第一章前言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1 .1项目简单介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1 .2项目特点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1 .3项目开发背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

1 .4项目的创新性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

1 .5项目开发的总目标. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

第二章 需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

2.1功能需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

2.2性能需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

2.3系统数据流图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

2.3.1系统总体数据流图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

2.3.2服务器端数据流图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

2.3.3客户端数据流图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

第三章概要设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3.1系统结构设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3.1 .1系统结构示意图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3.1 .2系统组织模块结构图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3.1 .3系统HIPO表. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 1

3.2接口设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

3.2.1用户界面接口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

3.2.2软件系统接口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

3.2.3软件部接口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

3.3数据库设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

第四章详细设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

4.1基本设计概念和处理流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

4.2关键技术代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20

第五章系统的关键技术和难点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36

5.1 MFC消息传递机制技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36

5.2 VC Socket通讯技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37

5.3 VC多线程技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37

第六章软件测试与改进思想. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39

6.1软件测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39

6.2软件改进思想. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40

第七章安装与使用说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41

7.1服务器端安装说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41

7.2服务器端操作说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44

7.3客户端的安装说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49

7.4客户端使用说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52

参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56

结束语. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59

致. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60

第一章前言

1.1项目简单介绍

本下载工具是联合局域网的几台客户机同时去下载I nternet网上的同一资源的不同数据块下载完后按顺序统一整合。它由下载客户机与服务器两个部分组成其中客户机完成下载与连接其他用户的功能而服务器则管理用户和资源情况供客户机提供在线用户的数据并且服务器能够对用户和资源进行控制。比如:封锁某些不合法的资源、禁止某些不合法的用户使用等。

其原理是利用局域网高的传输速度和解决局域网被限速问题。例如局域网的主机A要去下载I nternet上某服务器的资源那么它就会联合局域网的几台主机主机B主机C主机D等 它先请求服务器获取信息资源大小 然后根据资源大小和联合的主机数平均分配任务分别向服务器下载数据。在下载过程中,每台机将定时发送本机所下载的资源给主机A直到下载完成。在下载过程中如果主机C的平均速度与其他主机的平均下载速度相差悬殊的话那么主机A将发出撤销主机C的请求,然后主机A重新搜索局域网的其他主机代替主机C。若局域网的主机都不能接受请求的话那主机A将把主机C剩下的资源重新平均分配给正在下载的主机这样就完成了整个下载任务因此得到了很短的下载时间。

1.2项目特点

1 .本系统实现了多台机的联机下载。

2.本系统能够对机器的性能进行分析然后调整每台机的下载量。

3.本系统能够检测客户端机器突然死机或者关闭的情况对其释放然后重新寻找

新的客户端进行下载剩下的资源。

4.本系统能够对每个资源进行管理当有遇到一些不合法的资源时可对其资源进

行封闭。

5.本系统能够有效管理客户端的使用当有客户进行一些非法资源的传播时可对

他进行封锁。

1.3项目开发背景

随着网络的发展以及各种应用软件的出现我们可以通过网络实现与远方亲人进行聊天与朋友进行互动游戏。因此相应的网络带宽也越来越受到人们的重视人们一般通过租用更多的带宽来提高网络速度。

但是在BT软件以及电驴等P2P工具日益发展的今天不管你有多少带宽他都会100%的占用。所以目前如何封锁P2P软件逐渐成为局域网网络管理员头疼的问题很多局域网都将这个问题转换为带宽限制他们通过一些软件和路由的控制有效地限制了网络带宽从而实现对P2P软件的控制大大影响了P2P下载软件的下载速度效果非常显著。但是我们总是追求更高品质的网络生活希望下载速度能够“再快一点”。对此我将根据这些存在的问题设计出了此系统大大提高了下载速度。

1.4项目的创新性

1 .本软件能够主动连接其他机器分块进行下载从而不会出现下载重复资源的现象而其他P2P软件则是被动的避免不了下载重复资源。

2.本软件能够有效达到了资源共享,充分利用了局域网高的传输速度的特点,达到了资源的高效利用。

1.5项目开发的总目标

系统开发的总目标是充分利用局域网的高速的传输速率与解决局域网被限速带来的下载速度慢的问题来提高他们的下载速度。

第二章 需求分析

2.1功能需求

根据校园网特点和目前的下载工具状况我对这个系统的需求具有以下几个主要功能:

1 .单机下载因特网上的资源。

2.连接局域网的其他用户一起下载因特网上的资源。

3. 当遇到本局域网有其他用户曾下载过的资源,系统能够识别它,然后直接从本局域

网下载此资源。

针对以上几个主要功能,可把本系统分为两大模块:分布式下载工具客户端和分布式下载工具服务器端。其中分布式下载工具客户端又可分为发起下载管理模块和接受下载管理模块。

RAKsmart:美国洛杉矶独服,E3处理器/16G/1TB,$76.77/月;美国/香港/日本/韩国站群服务器,自带5+253个IPv4

RAKsmart怎么样?RAKsmart机房即日起开始针对洛杉矶机房的独立服务器进行特别促销活动:低至$76.77/月,最低100Mbps带宽,最高10Gbps带宽,优化线路,不限制流量,具体包括有:常规服务器、站群服务器、10G大带宽服务器、整机机柜托管。活动截止6月30日结束。RAKsmart,美国华人老牌机房,专注于圣何塞服务器,有VPS、独立服务器等。支持PayPal、支付宝付款。点击直达...

RAKsmart 2021新年新增韩国服务器及香港美国日本VPS半价

RAKsmart 商家我们肯定不算陌生,目前主要的营销客户群肯定是我们。于是在去年的时候有新增很多很多的机房,比如也有测试过的日本、香港、美国机房,这不今年有新增韩国机房(记得去年是不是也有增加过)。且如果没有记错的话,之前VPS主机也有一次磁盘故障的问题。 这不今天有看到商家新增韩国服务器产品,当然目前我还不清楚商家韩国服务器的线路和速度情况,后面我搞一台测试机进行...

10gbiz:香港/洛杉矶CN2直连线路VPS四折优惠,直连香港/香港/洛杉矶CN2四折

10gbiz怎么样?10gbiz在本站也多次分享过,是一家成立于2020的国人主机商家,主要销售VPS和独立服务器,机房目前有中国香港和美国洛杉矶、硅谷等地,线路都非常不错,香港为三网直连,电信走CN2,洛杉矶线路为三网回程CN2 GIA,10gbiz商家七月连续推出各种优惠活动,除了延续之前的VPS产品4折优惠,目前增加了美国硅谷独立服务器首月半价的活动,有需要的朋友可以看看。10gbiz优惠码...

mediafire下载工具为你推荐
美国主机租用国外服务器提供商有哪几家比较好的。。。广东虚拟主机有什么便宜又好用的虚拟主机吗?中文域名注册查询中文.com域名是什么,怎么注册美国vps主机我用的美国VPS主机429元/月,感觉好贵,请问有比较便宜点的吗?查询ip怎么查询IP地址免费域名空间求速度快的 免费空间 带域名的 谢谢大家成都虚拟空间五星网络隶属于成都冠一科技有限公司,虚拟空间购买了不到一个月不能访问2次,质量真差啊!合肥虚拟主机虚拟主机是干嘛的?买了虚拟主机是否要一台电脑?青岛虚拟主机阿里云主机青岛好还是杭州好shopex虚拟主机浙江新锐网络科技有限公司是一家骗子虚拟主机商
免费域名空间申请 美国和欧洲vps 主机屋 hostmaster 512au 灵动鬼影 老左来了 免费高速空间 傲盾官网 厦门电信 smtp虚拟服务器 浙江服务器 xuni 测试网速命令 腾讯网盘 美国主机 web是什么意思 阿里云宕机故障 screen 29美元 更多