当前位置:论文写作 > 写作资料 > 文章内容

p2p论文范文 p2p有关在职开题报告范文10000字有关写作资料

主题:p2p 下载地址:论文doc下载 原创作者:原创作者未知 评分:9.0分 更新时间: 2024-04-19

p2p论文范文

《P2P技术在车站售票程序自动升级中的实现》

该文是p2p方面有关在职开题报告范文跟程序相关论文范文.

摘 要 车站售票程序自动升级是将P2P技术的文件共享系统理念应用于自动升级程序,对车站售票程序的升级文件进行下载和管理.其本质是P2P文件管理系统,借鉴和综合了Napster和BitTorrent的优点.经过理论分析和试验验证, 该自动升级程序对升级文件进行下载和管理的功能实现,证明我们改进P2P技术方案的文件下载调度算法是合理的和高效率的.该P2P文件下载管理调度算法既保证了P2P网络结构化,也保证了在程序升级过程的中后期,在中心节点(服务器)节点断开的情况下也能实现某一台售票主机对中心节点的接管,保证整个P2P网络的所有主机售票程序升级完成.

关键词 结构化网络;P2P网络;调度算法;MD5;数据完整性;socket网络编程

背景

现在铁路车站售票系统是在铁路局域网络中采用C/S技术架构模式,车站售票系统客户端程序需要频繁地进行升级维护.当车站售票程序的功能增加或改变以及票价调整时,就需要对车站售票程序的相应文件进行替换或者增加,即车站售票程序升级.每次升级需要下载的文件数量有几个或几十个不等,下载的文件总共可达几百KB至一百多M不等,每個文件几乎都在1k至15M之间.

为减少车站信息技术人员的工作量和减少人工在程序升级中的操作失误,我们开发自动升级程序来实现车站售票程序的自动升级.为保证车站售票程序自动升级过程中确保文件传输的效率和对网络带宽等资源的合理利用,以及防止单点故障对程序升级造成影响,决定将对等网络(Peer to Peer网络,即P2P网络)技术应用于自动升级程序.

1updatefiles.xml和fcopysgetIp.xml文件

(1)在中心节点主机上进行升级文件包解压,解压过程中生成updatefiles.xml文件.updatefiles.xml文件包含该升级程序的版本号、中心节点Ip(服务器Ip)、提醒程序升级的通知内容、解压后的升级文件名称、文件路径,升级完成标志等等信息.updatefiles.xml文件格式及内容如下:

在中心节点(服务器端)给售票主机节点推送升级信息时,将fcopysgetIp.xml发送给售票主机.根据fcopysgetIp.xml,售票主机就知道P2P网络中哪些主机节点拥有该文件的副本,就能够通过调度算法从中心节点或主机节点中选择一台主机下载文件.

文件下载完之后,将下载文件的售票主机节点(Ip)添加到本机的fcopysgetIp.xml中;将下载文件的售票主机节点(Ip)添加到中心节点的fcopysgetIp.xml中;如果是从另一台主机节点下载文件(不是从中心节点主机下载文件),将下载文件的售票主机节点(Ip)添加到被请求访问的主机节点的fcopysgetIp.xml中.这样就能保证每台主机能及时更新整个网络售票主机的下载文件的备份情况[1].

2自动升级程序的P2P网络架构

自动升级程序基于Ja socket来构建P2P网络,采用TCP协议(一种可靠的传输协议).升级程序使用Ja socket编程,ja在ja.net包中提供了两个类:ServerSocket和Socket,分别对应网络连接的服务端、客户端.当然服务端和客户端在P2P网络中是相对概念,申请文件下载的主机为客户端,提供文件下载的主机为服务器端.ServerSocket和Socket是两个Ja已经封装好的类,其构造方法为: ServerSocket(int port);Socket(InetAddress address, int port).

借鉴Napster软件的结构化网络的优点,在P2P网络中设置中心节点.中心节点类似于C/S模式架构的索引服务器角色,首先为P2P网络提供文件的索引服务器的功能,同时也提供文件下载服务,其优点是实现网络结构化,扩展性好,P2P网络的主机节点的加入和离开都很简单,便于管理.自动升级程序采用结构化P2P网络是为了防止纯粹的非结构化对等网络的广播造成的消息泛洪而导致网络效率低下.

在售票程序自动升级初期,中心节点在P2P网络中推送升级信息时,会将updatefiles.xml文件发送给每一个售票节点主机.自动升级程序构建的结构化分布式对等网络将网络中文件的资源索引存储在fcopysgetIp.xml中.当一个车站售票节点主机在P2P网络中搜索相应的资源时,从中心节点获取fcopysgetIp.xml文件即可.以这样的方式,fcopysgetIp.xml文件将从中心节点备份到网络中的每一台车站售票主机.从updatefiles.xml获取需要下载的文件名和从fcopysgetIp.xml搜索并通过算法随机获取拥有该文件副本的主机ip,这样就可以与对应ip节点主机连接并下载文件.

自动升级程序也借鉴了BitTorrent软件优点.在健壮性方面,在文件下载在中后期,文件下载服务分散在各个节点之间,用fcopysgetIp.xml代替分布式哈希表实现文件主机索引的功能,防止单点故障,即使中心节点断开也能保证整个网络的文件下载,容错性好.中心节点失效时,P2P网络中的一台主机会接管中心节点的功能,并自动调整网络拓扑,保持其他节点的连通性.同时不再像BitTorrent一样对文件分片传输,而是自动升级程序将单个文件作为一个单元进行传输,并对传输文件和文件的MD5散列值一起传输至客户端,然后进行文件的完整性校验.

对等网络(P2P)减少了C/S模型中对服务器的资源访问压力,资源分布存储在多个主机节点上,起到了整个网络负载均衡的作用.

自动升级程序基于P2P网络完成升级文件下载的同时,该网络需要一个中心节点(服务器)保证网络的结构化.P2P网络的中心节点既是提供文件下载的节点,也是一个文件下载的索引服务器.中心节点在这里面所起的作用不仅是传输文件,更是查找文件的location[2].

3自动升级程序文件下载的基本过程

自动升级程序基于P2P网络的文件下载基本过程描述如下:

(1)在程序升级初期,售票程序的升级文件只能从中心节点(服务器端S)下载升级文件,流程如下:

①将升级文件包解压到服务器端(对等网络的中心节点),并同时生成两个XML文件updatefiles.xml和fcopysgetIp.xml文件.

②服务器端向车站客户端推送需要升级的信息.

③车站客户端收到程序升级提醒,售票员退出售票程序,点击“确定升级”确认可以升级.

④服务器端首先将updatefiles.xml发送给车站客户端.

⑤车站客户端从服务器端获取updatefiles.xml和fcopysgetIp.xml文件,覆盖本机磁盘上的updatefiles.xml和fcopysgetIp.xml文件.

⑥车站客户端按照updatefiles.xml中记录的文件名依次向服务器端请求下载文件.

⑦车站客户端下载完成某个文件后,在updatefiles.xml中修改该文件名对应的该条记录的下载完成标志,并在fcopysgetIp.xml中该文件名对应的该条记录中添加车站客户端IP.

⑧车站客户端下载完成某个文件后,向服务器端发送一条文件下载完成信息,在服务器端的fcopysgetIp.xml中该文件名对应的记录中添加车站客户端IP.

(2)在程序升级的中后期,售票程序的升级的所有文件copies在中心节点(服务器端)和一部分车站售票主机节点上.假设有m台车站售票主机已有升级文件xxx.dll,文件下载流程如下:

①假设车站客户端主机C1需要下载xxx.dll文件,C1向服务器S请求获取fcopysgetIp.xml文件,并從fcopysgetIp.xml中读取拥有xxx.dll文件copy的m个车站客售票主机Ip.

②C1通过调度算法选择从S或者从m台客户端主机中的某一台主机(假设为客户端主机C2)下载xxx.dll文件.

③如果XX.dll文件下载成功,C1在自己本机的文件updatefiles.xml中修改XX.dll对应的该条记录的下载完成标志.同时,C1、S、C2在自己本机的文件fcopysgetIp.xml中该文件名对应的记录中添加C1的IP.

④如果XX.dll文件下载不成功,C1从fcopysgetIp.xml中通过调度算法选择另一台主机再次下载XX.dll文件,重复该步骤直至该文件下载完成.

⑤按照updatefiles.xml中记录的文件名,依次下载文件,重复以上步骤,直至升级文件全部下载完成[3].

4结构化P2P网络下载文件调度算法及实现

自动升级程序结构化P2P网络下载文件调度算法非常简单和易于实现.步骤如下:

(1)上传升级包至服务器端(中心节点),升级包解压到指定路径下,并生成updatefiles.xml文件和fcopysgetIp.xml文件.updatefiles.xml记录了所有升级包文件的文件名和路径信息.

(2)中心节点将updatefiles.xml和fcopysgetIp.xml传送给售票主机节点.

(3)售票主机节点按照updatefiles.xml的记录依次从该P2P网络申请访问下载文件.对应表格如下:

对表格中m+1个主机进行随机排序后,向第一个主机申请xxx.vsd文件下载.如果下载成功,然后将新获取xxx.vsd文件副本的主机IP添加到本地主机、中心节点主机和提供下载文件副本的主机的fcopysgetIp.xml中并修改xxx.vsd文件的对应下载标志,重复以上第三步骤.如果下载不成功将第一个主机放在临时排序表最后位置,向第二个主机申请文件下载.同理,依次申请下载xxx.vsd文件,直至xxx.vsd文件下载完成.

该算法实际上实现了随机申请网络资源的碰撞回退功能,起到了网络负载均衡的作用.该算法也明显去掉了中心节点的数据访问压力,在此结构化P2P网络中,中心节点的文件访问压力只相当于C/S模式文件访问压力的1/m+1.在整个网络文件下载的中后期随着m值的增加,中心服务器的文件下载压力会越来越小,文件下载速度也会越来越快.

(5)在文件下载中后期,如果中心节点出现故障,只要其中一个车站售票节点主机拥有所有下载文件的全备份,该节点主机将接管中心服务器的功能,并向申请文件下载的售票节点提供fcopysgetIp.xml,保证整个结构化P2P网络中所有升级文件的顺利下载.

5MD5进行文件完整性校验

为保证文件传输过程中的完整性,对下载的文件进行MD5散列值的完整性校验.假设,请求文件主机为A,提供文件下载主机为B.

(1)在主机B传输文件xxx.vsd前,利用MD5算法对xxx.vsd文件编码,生成128位的哈希值.

(2)主机B将文件xxx.vsd和128位的哈希值一起传送给主机A.

(3)主机A收到信息后,利用MD5算法对收到的xxx.vsd文件编码,生成128位的哈希值.再将生成128位的哈希值与从主机B接收到的128位的哈希值进行对比,如果相等,证明文件xxx.vsd完整;如果不相等,证明文件xxx.vsd已损坏.从而实现文件完整性校验.

6结束语

基于结构化P2P网络技术的改进方案,提供了一种简单新颖的结构化P2P网络结构化方式,在局域网中完全能够实现既定功能,还易于编码实现.通过理论分析和实验验证,改进后的结构化P2P网络技术方案是合理可行的.

参考文献

[1] 牛冬.区块链底层设计Ja实战[M].北京:电子工业出版社,2019: 20-96.

[2] 蔡康,唐宏,丁圣勇,等.P2P对等网络原理与应用[M].北京:科学出版社,2011:188-198.

[3] 孙立镌,杨首昂.基于P2P结构的协同设计系统的构架研究[J].计算机应用研究,2009,26(5):1803-1805.

作者简介

邓洪波(1980-),男,四川仁寿县人;学历:本科,工程师,现就职单位:中国铁道科学研究院集团有限公司,研究方向:软件开发.

回顾述说,本文是一篇适合程序论文写作的大学硕士及关于p2p本科毕业论文,相关p2p开题报告范文和学术职称论文参考文献.

p2p引用文献:

[1] 基于SVM的P2P流量的识别系统 硕士论文开题报告范文
[2] P2P论文范文 关于P2P相关本科论文范文2500字
[3] p2p和p2p理财毕业论文范文 p2p和p2p理财方面有关电大毕业论文范文2万字
《p2p论文范文 p2p有关在职开题报告范文10000字》word下载【免费】
p2p相关论文范文资料