局域网资源共享系统设计与开发
局域网资源共享系统设计与开发[20191215140322]
摘 要
在当今的互联网环境下,资源共享软件在人们的生活中占据了重要的地位。本课题主要针对校园局域网,设计实现了一款对等网络下的资源共享软件。
论文首先从系统的主要开发技术背景、特点及应用、国内外研究现状和目的意义出发,论述了软件开发的可行性。根据软件工程开发流程对本系统进行了需求分析、概要设计、详细设计和系统测试。主要完成了用户注册与登陆、添加好友、连接好友、发送推送信息或即时信息和共享资源等功能。论文最后对整个设计开发工作进行了总结。
本系统适用于大部分校园局域网内的资源共享,主要使用Visual Stutio 2010作为开发工具、Windows 7作为系统开发平台、C#作为系统开发语言、SQL Server 2008作为后台数据库。采用可视化的编程方法实现系统设计与开发。
查看完整论文请+Q: 351916072
关键字:资源共享;局域网;软件工程;对等网络
目 录
摘要 I
ABSTRACT II
第1章 绪论 1
1.1 研究背景 1
1.2 P2P特点及应用 1
1.3 P2P国内外研究现状 2
1.4 P2P研究的目的和意义 3
第2章 系统需求 4
2.1 系统分析方法 4
2.2 需求分析 5
2.2.1 业务流程 5
2.2.2 数据需求 6
2.2.3 功能需求 7
2.2.4 安全性需求 8
2.3 可行性分析 4
第3章 概要设计 9
3.1 系统架构设计 9
3.2 系统结构设计 9
3.3 数据库设计 9
3.3.1 数据库概念模型设计 12
3.3.2 数据库逻辑模型设计 12
3.3.3 数据库物理模型设计 13
第4章 详细设计 15
4.1 系统设计思想 15
4.2 数据库连接 15
4.3 P2P共享系统可视化界面设计 16
4.3.1 登陆界面设计 16
4.3.2 服务器端可视化界面设计 18
4.3.3 客户端可视化界面设计 19
4.3.4 注册界面设计 22
第5章 系统测试 24
5.1 测试方案 24
5.2 测试项目 24
5.3 测试用例 25
第6章 结束语 29
参考文献 30
附录一 31
第1章 绪论
1.1 研究背景
随着互联网的发展,人们对互联网的要求越来越高。而传统的C/S、B/S模式中,网络服务主要由服务器提供,每台服务器可能需要面对大量的客户机。随着请求服务的客户机数量不断增加,服务器所需资源也要相应增加,所以服务器提供的服务会受其自身能力的限制。这种C/S、B/S模式[1]在互联网的发展早期还是有很大优势的,所以,目前绝大多数网络应用都是基于这种模式开发的。但是硬件的高速发展,个人电脑的CPU性能和存储空间的大大提高,网络中的数据开始从“中心”向“边缘”迁移,这种模式已难于满足人们的需要了。为了消除这种以服务器为中心的网络瓶颈,尽可能利用网络边缘空闲的资源[2],网络研究者们提出了P2P[3]的概念,即对等互联或点对点技术。P2P技术打破了C/S模式的传统想法,在网络中每个节点的地位平等,既充当客户,分享其他节点提供的服务,又充当服务器,为其他节点提供服务和内容。
1.2 特点及应用
与传统的分布式系统相比,P2P技术具有无可比拟的优势和广阔的应用前景。目前,Internet上各种P2P应用软件层出不穷,用户数量也急剧增加。据统计,自2001年以来,大量P2P软件的用户使用数量从几十万、几百万到上千万直至上亿地急剧增加,给Internet带宽带来巨大冲击。而P2P网络的某些特点正好可以缓解这种压力,其特点[4]主要体现在以下几方面:
非中心化:网络中的资源和服务分散在所有节点上,信息的传输和服务的实现直接在节点之间进行,可以无需中间环节和服务器的介入,避免了可能的瓶颈。
可扩展性:在P2P网络中,虽然随着用户的加入,服务的需求会增加,但系统整体的资源和服务能力也在同步的扩充,能较容易地满足用户的需要。
健壮性:由于服务是分散在各节点之间进行的,部分节点或网络遭到破坏对其他部分的影响很小。P2P网络一般在部分节点失效时能够自动调整整体拓扑,以保持其他节点的连通性。P2P网络通常都是以自组织的方式建立起来的,并允许节点自由地加入和离开。
高性价比:采用P2P结构可以有效地利用互联网中散布的大量普通节点,将计算任务或存储资料分布在所有节点上,从而达到高性能计算和海量存储的目的。
隐私保护:P2P网络中,信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。
负载均衡:P2P网络环境下每个节点减少了对服务器计算能力、存储能力的要求。且资源分布在多个节点上,更好的实现了整个网络的负载均衡。
P2P如此众多的特点也使得它的应用面特别广,目前它主要应用于以下几个方面[5]:
信息资源共享:信息资源共享是P2P技术产生的主要目的和根本动力,采用P2P的方式共享信息资源,可以充分的利用网络宽带,提高共享效率,目前流行的P2P文件共享系统有Gnutella,FastTrack,FreeNet等。
对等计算:目的在于共享网络上数量庞大的计算机暂时不用的CPU资源,将这些资源积累起来,用以完成以往需要超级计算机才能完成的任务。适用于需要处理大量数据的行业,如天气预报、动画制作、基因组的研究等。
搜索引擎:这是目前人们在网络中检索信息资源的主要工具,目前的搜索引擎如Google和Baidu等都是集中式的搜索引擎,虽然能尽快获得搜索结果,但是不能保证搜索范围的深度和结果的时效性。运用P2P技术开发的搜索工具使用户深度搜索文档成为可能。P2P网络模式中节点之间的动态而对等的互联关系使得搜索可以在对等点之间直接、实时地进行,既可以保证搜索的实时性,又可以达到很好的搜索效果。
实时通信:这是当下互联网上最流行、使用最广泛的应用,它为用户之间的实时交流提供了虚拟平台。目前著名的实时通信系统包括MSN、ICQ、OICQ等,这些通信技术都存在中央服务器用来控制用户的身份认证等基本信息,并帮助完成节点之间的初始连接工作,但数据通信是节点之间直接进行的。
协同工作:指多个用户之间利用网络中的协同计算平台来共同完成某项任务,共享信息资源等。
1.3 国内外研究现状
近年来,基于P2P技术的共享软件非常流行,很多国内外研究机构和公司都对P2P技术开展了大量的工作。
国内从事P2P技术研究的学术机构主要有清华大学、华中科技大学和北京大学。Granary是清华大学自主研发的一个对等计算存储服务系统,AnySee是华中科技大学自主研发的一个视频直播系统,而Maze是北京大学网络实验室开发的一个中心控制与对等连接相融合的对等计算文件共享系统。
国外研究P2P的著名高校和学术团体主要包括MIT、UC Berkeley、Stanford、P2PWG、GGF等。其中MIT设计了经典的结构化P2P模型Chord,UC Berkeley在2001年提出了著名的多维P2P模型CAN,P2PWG工作组的主要目的是加速P2P计算基础设施的建设和相应的标准化工作,目前P2PWG已经与GGF合并,并由GGF负责网格计算和P2P计算等相关的标准化工作。
国外研究P2P最为突出的公司有Microsoft,Sun和Intel。Microsoft公司成立了Pastry项目组,主要负责P2P计算技术的研究和开发工作,目前它已经发布了基于Pastry的软件包SimPastry/VisPastry。Sun公司利用其在Java技术方面的优势,开发研究了著名的JXTA项目,旨在提供一个开放、互通、互操作的P2P开发平台。Intel公司对P2P应用的研究也非常重视,2002年8月Intel发布了.NET基础架构之上的Accelerator Kit(P2P加速工具包)和P2P安全API软件包,从而使得微软.NET开发人员能够迅速建立P2P安全Web应用程序。
1.4 研究的目的和意义
P2P模式相对C/S模式具有很多优点,但随着P2P应用的不断增加,P2P技术也开始面临一些问题,例如路由效率低下、维护开销过大、系统稳定性差、安全性无法保证以及服务不可靠等问题。因此,在提高现有P2P网络资源定位的效率,降低其维护开销,增强P2P系统的稳定性和安全性,提高P2P各节点提供服务的可靠性等方面需要做深入的研究。
深入研究P2P资源定位技术有重要的理论和现实意义。一方面,随着P2P应用的不断增长,P2P资源定位技术遇到的一系列问题迫切需要我们对它进行更加深入的研究,这将有助于它的进一步推广和使用;另一方面,把P2P资源定位技术与其他技术相结合,可以达到相互促进的效果,如把P2P资源定位技术引用到通信领域,把P2P资源定位技术与网格技术相结合,都可以促进彼此的发展。
第2章 系统需求
2.1 可行性分析
可以说文件交换的需求直接引发了P2P技术热潮。在传统的WEB方式中,要实现文件交换需要服务器的大力参与,通过将文件上传到某个特定的网站,用户再到某个网站搜索需要的文件,然后下载,这种方式的不便之处不言而喻。电子邮件是方便了个人间文件传递问题,却没法解决大范围的交换。这也是WEB的重要缺陷,P2P就是在情况下横空出世。P2P很好的解决了传统的C/S模式下瓶颈问题,让资源共享变的更方便,快捷。用户直接和用户之间进行数据交换,改变了传统的模式。
在理论上,本主题探寻文件共享的基础理论——知识管理理论、计算机网络、分布式存储和心理学——相关研究成果的新结合点,研究在现有理论基础上如何更好的满足人们文件共享的需求,采用分布式、高效的基于P2P技术构建的文件共享网络这种文件共享模式,并明确提出了P2P文件共享网络的整个架构,同时,提出了一个P2P环境下维护数据一致性和可用性的算法;在实践上,毕设要实现了一个简单的P2P知识共享网络的框架,给出了原型实现,经过小范围的实验和部署,能够证明P2P文件共享网络能够提供很高的可用性,并且文件共享的效果也应该很好。
2.2 系统分析方法
目前常用的分析方法有面向数据流的结构化分析方法,面向数据结构的Jackson方法,面向对象的分析方法(简称OOA)等,以及建立动态模型的状态迁移图或PetriQ网等[6]。虽然各种方法都有其独特的描述方法,但总的说来,所有的分析方法都有他们的共同原则:
(1)必须能够表达和理解问题的数据域和功能域。
(2)必须按自上向下、逐层分解的方式对问题进行分解和细化。在需求分析阶段,软件的数据域和功能域都能进一步的分解,可以是横向分解也可以是纵向分解。
(3)要给出系统的逻辑视图和物理视图。软件需求的逻辑视图给出软件要达到功能和处理的数据之间的关系,而不是实现细节;而物理视图给出处理功能和数据结构的实际表示形式。
摘 要
在当今的互联网环境下,资源共享软件在人们的生活中占据了重要的地位。本课题主要针对校园局域网,设计实现了一款对等网络下的资源共享软件。
论文首先从系统的主要开发技术背景、特点及应用、国内外研究现状和目的意义出发,论述了软件开发的可行性。根据软件工程开发流程对本系统进行了需求分析、概要设计、详细设计和系统测试。主要完成了用户注册与登陆、添加好友、连接好友、发送推送信息或即时信息和共享资源等功能。论文最后对整个设计开发工作进行了总结。
本系统适用于大部分校园局域网内的资源共享,主要使用Visual Stutio 2010作为开发工具、Windows 7作为系统开发平台、C#作为系统开发语言、SQL Server 2008作为后台数据库。采用可视化的编程方法实现系统设计与开发。
查看完整论文请+Q: 351916072
关键字:资源共享;局域网;软件工程;对等网络
目 录
摘要 I
ABSTRACT II
第1章 绪论 1
1.1 研究背景 1
1.2 P2P特点及应用 1
1.3 P2P国内外研究现状 2
1.4 P2P研究的目的和意义 3
第2章 系统需求 4
2.1 系统分析方法 4
2.2 需求分析 5
2.2.1 业务流程 5
2.2.2 数据需求 6
2.2.3 功能需求 7
2.2.4 安全性需求 8
2.3 可行性分析 4
第3章 概要设计 9
3.1 系统架构设计 9
3.2 系统结构设计 9
3.3 数据库设计 9
3.3.1 数据库概念模型设计 12
3.3.2 数据库逻辑模型设计 12
3.3.3 数据库物理模型设计 13
第4章 详细设计 15
4.1 系统设计思想 15
4.2 数据库连接 15
4.3 P2P共享系统可视化界面设计 16
4.3.1 登陆界面设计 16
4.3.2 服务器端可视化界面设计 18
4.3.3 客户端可视化界面设计 19
4.3.4 注册界面设计 22
第5章 系统测试 24
5.1 测试方案 24
5.2 测试项目 24
5.3 测试用例 25
第6章 结束语 29
参考文献 30
附录一 31
第1章 绪论
1.1 研究背景
随着互联网的发展,人们对互联网的要求越来越高。而传统的C/S、B/S模式中,网络服务主要由服务器提供,每台服务器可能需要面对大量的客户机。随着请求服务的客户机数量不断增加,服务器所需资源也要相应增加,所以服务器提供的服务会受其自身能力的限制。这种C/S、B/S模式[1]在互联网的发展早期还是有很大优势的,所以,目前绝大多数网络应用都是基于这种模式开发的。但是硬件的高速发展,个人电脑的CPU性能和存储空间的大大提高,网络中的数据开始从“中心”向“边缘”迁移,这种模式已难于满足人们的需要了。为了消除这种以服务器为中心的网络瓶颈,尽可能利用网络边缘空闲的资源[2],网络研究者们提出了P2P[3]的概念,即对等互联或点对点技术。P2P技术打破了C/S模式的传统想法,在网络中每个节点的地位平等,既充当客户,分享其他节点提供的服务,又充当服务器,为其他节点提供服务和内容。
1.2 特点及应用
与传统的分布式系统相比,P2P技术具有无可比拟的优势和广阔的应用前景。目前,Internet上各种P2P应用软件层出不穷,用户数量也急剧增加。据统计,自2001年以来,大量P2P软件的用户使用数量从几十万、几百万到上千万直至上亿地急剧增加,给Internet带宽带来巨大冲击。而P2P网络的某些特点正好可以缓解这种压力,其特点[4]主要体现在以下几方面:
非中心化:网络中的资源和服务分散在所有节点上,信息的传输和服务的实现直接在节点之间进行,可以无需中间环节和服务器的介入,避免了可能的瓶颈。
可扩展性:在P2P网络中,虽然随着用户的加入,服务的需求会增加,但系统整体的资源和服务能力也在同步的扩充,能较容易地满足用户的需要。
健壮性:由于服务是分散在各节点之间进行的,部分节点或网络遭到破坏对其他部分的影响很小。P2P网络一般在部分节点失效时能够自动调整整体拓扑,以保持其他节点的连通性。P2P网络通常都是以自组织的方式建立起来的,并允许节点自由地加入和离开。
高性价比:采用P2P结构可以有效地利用互联网中散布的大量普通节点,将计算任务或存储资料分布在所有节点上,从而达到高性能计算和海量存储的目的。
隐私保护:P2P网络中,信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。
负载均衡:P2P网络环境下每个节点减少了对服务器计算能力、存储能力的要求。且资源分布在多个节点上,更好的实现了整个网络的负载均衡。
P2P如此众多的特点也使得它的应用面特别广,目前它主要应用于以下几个方面[5]:
信息资源共享:信息资源共享是P2P技术产生的主要目的和根本动力,采用P2P的方式共享信息资源,可以充分的利用网络宽带,提高共享效率,目前流行的P2P文件共享系统有Gnutella,FastTrack,FreeNet等。
对等计算:目的在于共享网络上数量庞大的计算机暂时不用的CPU资源,将这些资源积累起来,用以完成以往需要超级计算机才能完成的任务。适用于需要处理大量数据的行业,如天气预报、动画制作、基因组的研究等。
搜索引擎:这是目前人们在网络中检索信息资源的主要工具,目前的搜索引擎如Google和Baidu等都是集中式的搜索引擎,虽然能尽快获得搜索结果,但是不能保证搜索范围的深度和结果的时效性。运用P2P技术开发的搜索工具使用户深度搜索文档成为可能。P2P网络模式中节点之间的动态而对等的互联关系使得搜索可以在对等点之间直接、实时地进行,既可以保证搜索的实时性,又可以达到很好的搜索效果。
实时通信:这是当下互联网上最流行、使用最广泛的应用,它为用户之间的实时交流提供了虚拟平台。目前著名的实时通信系统包括MSN、ICQ、OICQ等,这些通信技术都存在中央服务器用来控制用户的身份认证等基本信息,并帮助完成节点之间的初始连接工作,但数据通信是节点之间直接进行的。
协同工作:指多个用户之间利用网络中的协同计算平台来共同完成某项任务,共享信息资源等。
1.3 国内外研究现状
近年来,基于P2P技术的共享软件非常流行,很多国内外研究机构和公司都对P2P技术开展了大量的工作。
国内从事P2P技术研究的学术机构主要有清华大学、华中科技大学和北京大学。Granary是清华大学自主研发的一个对等计算存储服务系统,AnySee是华中科技大学自主研发的一个视频直播系统,而Maze是北京大学网络实验室开发的一个中心控制与对等连接相融合的对等计算文件共享系统。
国外研究P2P的著名高校和学术团体主要包括MIT、UC Berkeley、Stanford、P2PWG、GGF等。其中MIT设计了经典的结构化P2P模型Chord,UC Berkeley在2001年提出了著名的多维P2P模型CAN,P2PWG工作组的主要目的是加速P2P计算基础设施的建设和相应的标准化工作,目前P2PWG已经与GGF合并,并由GGF负责网格计算和P2P计算等相关的标准化工作。
国外研究P2P最为突出的公司有Microsoft,Sun和Intel。Microsoft公司成立了Pastry项目组,主要负责P2P计算技术的研究和开发工作,目前它已经发布了基于Pastry的软件包SimPastry/VisPastry。Sun公司利用其在Java技术方面的优势,开发研究了著名的JXTA项目,旨在提供一个开放、互通、互操作的P2P开发平台。Intel公司对P2P应用的研究也非常重视,2002年8月Intel发布了.NET基础架构之上的Accelerator Kit(P2P加速工具包)和P2P安全API软件包,从而使得微软.NET开发人员能够迅速建立P2P安全Web应用程序。
1.4 研究的目的和意义
P2P模式相对C/S模式具有很多优点,但随着P2P应用的不断增加,P2P技术也开始面临一些问题,例如路由效率低下、维护开销过大、系统稳定性差、安全性无法保证以及服务不可靠等问题。因此,在提高现有P2P网络资源定位的效率,降低其维护开销,增强P2P系统的稳定性和安全性,提高P2P各节点提供服务的可靠性等方面需要做深入的研究。
深入研究P2P资源定位技术有重要的理论和现实意义。一方面,随着P2P应用的不断增长,P2P资源定位技术遇到的一系列问题迫切需要我们对它进行更加深入的研究,这将有助于它的进一步推广和使用;另一方面,把P2P资源定位技术与其他技术相结合,可以达到相互促进的效果,如把P2P资源定位技术引用到通信领域,把P2P资源定位技术与网格技术相结合,都可以促进彼此的发展。
第2章 系统需求
2.1 可行性分析
可以说文件交换的需求直接引发了P2P技术热潮。在传统的WEB方式中,要实现文件交换需要服务器的大力参与,通过将文件上传到某个特定的网站,用户再到某个网站搜索需要的文件,然后下载,这种方式的不便之处不言而喻。电子邮件是方便了个人间文件传递问题,却没法解决大范围的交换。这也是WEB的重要缺陷,P2P就是在情况下横空出世。P2P很好的解决了传统的C/S模式下瓶颈问题,让资源共享变的更方便,快捷。用户直接和用户之间进行数据交换,改变了传统的模式。
在理论上,本主题探寻文件共享的基础理论——知识管理理论、计算机网络、分布式存储和心理学——相关研究成果的新结合点,研究在现有理论基础上如何更好的满足人们文件共享的需求,采用分布式、高效的基于P2P技术构建的文件共享网络这种文件共享模式,并明确提出了P2P文件共享网络的整个架构,同时,提出了一个P2P环境下维护数据一致性和可用性的算法;在实践上,毕设要实现了一个简单的P2P知识共享网络的框架,给出了原型实现,经过小范围的实验和部署,能够证明P2P文件共享网络能够提供很高的可用性,并且文件共享的效果也应该很好。
2.2 系统分析方法
目前常用的分析方法有面向数据流的结构化分析方法,面向数据结构的Jackson方法,面向对象的分析方法(简称OOA)等,以及建立动态模型的状态迁移图或PetriQ网等[6]。虽然各种方法都有其独特的描述方法,但总的说来,所有的分析方法都有他们的共同原则:
(1)必须能够表达和理解问题的数据域和功能域。
(2)必须按自上向下、逐层分解的方式对问题进行分解和细化。在需求分析阶段,软件的数据域和功能域都能进一步的分解,可以是横向分解也可以是纵向分解。
(3)要给出系统的逻辑视图和物理视图。软件需求的逻辑视图给出软件要达到功能和处理的数据之间的关系,而不是实现细节;而物理视图给出处理功能和数据结构的实际表示形式。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/3381.html